<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="cache-control" content="no-cache">
<title>reflex::Pattern::DFA::State Struct Reference</title>
<link href="doxygen_tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="doxygen_content.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="top">
 <div id="titlearea">
  <table height="72px" width="100%" cellspacing="0" cellpadding="0">
   <tbody>
    <tr>
     <td width="10%">&nbsp;</td>
     <td><a href="https://github.com/Genivia/RE-flex"><img src="reflex-logo.png"/></a></td>
     <td>
      <div style="float: right; font-size: 18px; font-weight: bold;">reflex::Pattern::DFA::State Struct Reference</div>
      <br>
      <div style="float: right; font-size: 10px;">updated Thu May 14 2020 by Robert van Engelen</div>
     </td>
     <td width="10%">&nbsp;</td>
    </tr>
   </tbody>
  </table>
 </div>
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacereflex.html">reflex</a></li><li class="navelem"><a class="el" href="classreflex_1_1_pattern.html">Pattern</a></li><li class="navelem"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a.html">DFA</a></li><li class="navelem"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">reflex::Pattern::DFA::State Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;pattern.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for reflex::Pattern::DFA::State:</div>
<div class="dyncontent">
<div class="center"><img src="structreflex_1_1_pattern_1_1_d_f_a_1_1_state__inherit__graph.png" border="0" usemap="#reflex_1_1_pattern_1_1_d_f_a_1_1_state_inherit__map" alt="Inheritance graph"/></div>
<map name="reflex_1_1_pattern_1_1_d_f_a_1_1_state_inherit__map" id="reflex_1_1_pattern_1_1_d_f_a_1_1_state_inherit__map">
<area shape="rect" id="node2" title="STL class. " alt="" coords="37,5,113,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for reflex::Pattern::DFA::State:</div>
<div class="dyncontent">
<div class="center"><img src="structreflex_1_1_pattern_1_1_d_f_a_1_1_state__coll__graph.png" border="0" usemap="#reflex_1_1_pattern_1_1_d_f_a_1_1_state_coll__map" alt="Collaboration graph"/></div>
<map name="reflex_1_1_pattern_1_1_d_f_a_1_1_state_coll__map" id="reflex_1_1_pattern_1_1_d_f_a_1_1_state_coll__map">
<area shape="rect" id="node2" title="STL class. " alt="" coords="167,7,243,33"/>
<area shape="rect" id="node4" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html" title="reflex::Pattern::Tree\l::Node" alt="" coords="135,97,275,138"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a5a1c3fc9957d801c8d8168988205e526"><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; <a class="el" href="classreflex_1_1_pattern.html#a1d74385d9faa9b77a0fd17614a17d3b1">Char</a>, std::pair&lt; <a class="el" href="classreflex_1_1_pattern.html#a1d74385d9faa9b77a0fd17614a17d3b1">Char</a>, <a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a5a1c3fc9957d801c8d8168988205e526">Edges</a></td></tr>
<tr class="separator:a5a1c3fc9957d801c8d8168988205e526"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a268a99e2ba713557dd1b7208d71a96f2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a268a99e2ba713557dd1b7208d71a96f2">State</a> ()</td></tr>
<tr class="separator:a268a99e2ba713557dd1b7208d71a96f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a053ca8d75ab02e211c9b61ed309830eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a053ca8d75ab02e211c9b61ed309830eb">assign</a> (<a class="el" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html">Tree::Node</a> *node)</td></tr>
<tr class="separator:a053ca8d75ab02e211c9b61ed309830eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7528c8668a319c6547ed323838f8e0c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#af7528c8668a319c6547ed323838f8e0c">assign</a> (<a class="el" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html">Tree::Node</a> *node, <a class="el" href="classreflex_1_1_pattern.html#a7afa8a46d3665051c17de9b327f3f4dc">Positions</a> &amp;pos)</td></tr>
<tr class="separator:af7528c8668a319c6547ed323838f8e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a5b7dfbc7187d35eebfe92e1695524e7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a5b7dfbc7187d35eebfe92e1695524e7f">next</a></td></tr>
<tr class="memdesc:a5b7dfbc7187d35eebfe92e1695524e7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">points to next state in the list of states allocated depth-first by subset construction  <a href="#a5b7dfbc7187d35eebfe92e1695524e7f">More...</a><br /></td></tr>
<tr class="separator:a5b7dfbc7187d35eebfe92e1695524e7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaedea7cd603ba10520be2d19811d2d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#aaaedea7cd603ba10520be2d19811d2d3">left</a></td></tr>
<tr class="memdesc:aaaedea7cd603ba10520be2d19811d2d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">left pointer for O(log N) node insertion in the hash table overflow tree  <a href="#aaaedea7cd603ba10520be2d19811d2d3">More...</a><br /></td></tr>
<tr class="separator:aaaedea7cd603ba10520be2d19811d2d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcddb0ef1460d7550e83500a400089c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#afcddb0ef1460d7550e83500a400089c3">right</a></td></tr>
<tr class="memdesc:afcddb0ef1460d7550e83500a400089c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">right pointer for O(log N) node insertion in the hash table overflow tree  <a href="#afcddb0ef1460d7550e83500a400089c3">More...</a><br /></td></tr>
<tr class="separator:afcddb0ef1460d7550e83500a400089c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8975ca87c2a8a4a584923c74080dbfc2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html">Tree::Node</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a8975ca87c2a8a4a584923c74080dbfc2">tnode</a></td></tr>
<tr class="memdesc:a8975ca87c2a8a4a584923c74080dbfc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">the corresponding tree <a class="el" href="structreflex_1_1_pattern_1_1_d_f_a.html" title="DFA created by subset construction from regex patterns. ">DFA</a> node, when applicable  <a href="#a8975ca87c2a8a4a584923c74080dbfc2">More...</a><br /></td></tr>
<tr class="separator:a8975ca87c2a8a4a584923c74080dbfc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ec49b3b5a3382444710e6be864a6930"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a5a1c3fc9957d801c8d8168988205e526">Edges</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a1ec49b3b5a3382444710e6be864a6930">edges</a></td></tr>
<tr class="memdesc:a1ec49b3b5a3382444710e6be864a6930"><td class="mdescLeft">&#160;</td><td class="mdescRight">state transitions  <a href="#a1ec49b3b5a3382444710e6be864a6930">More...</a><br /></td></tr>
<tr class="separator:a1ec49b3b5a3382444710e6be864a6930"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad7022adc0907c7068635b57176508bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_pattern.html#a878042a0e46a089fd40b5f27bbf81ea3">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#aad7022adc0907c7068635b57176508bf">first</a></td></tr>
<tr class="memdesc:aad7022adc0907c7068635b57176508bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">index of this state in the opcode table, determined by the first assembly pass  <a href="#aad7022adc0907c7068635b57176508bf">More...</a><br /></td></tr>
<tr class="separator:aad7022adc0907c7068635b57176508bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06a3c30420041f7866d2115fab11d357"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_pattern.html#a878042a0e46a089fd40b5f27bbf81ea3">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a06a3c30420041f7866d2115fab11d357">index</a></td></tr>
<tr class="memdesc:a06a3c30420041f7866d2115fab11d357"><td class="mdescLeft">&#160;</td><td class="mdescRight">index of this state in the opcode table  <a href="#a06a3c30420041f7866d2115fab11d357">More...</a><br /></td></tr>
<tr class="separator:a06a3c30420041f7866d2115fab11d357"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a186c28e529321e5de6bbb24288727785"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_pattern.html#a6f0e307c649ca5683b7d959b7e25f367">Accept</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a186c28e529321e5de6bbb24288727785">accept</a></td></tr>
<tr class="memdesc:a186c28e529321e5de6bbb24288727785"><td class="mdescLeft">&#160;</td><td class="mdescRight">nonzero if final state, the index of an accepted/captured subpattern  <a href="#a186c28e529321e5de6bbb24288727785">More...</a><br /></td></tr>
<tr class="separator:a186c28e529321e5de6bbb24288727785"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec12a24c9e2a96b83d4b5cb2e7cfeae0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_pattern.html#a635e175260a3f7fa5cc9fe1ea9d5ca26">Lookaheads</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#aec12a24c9e2a96b83d4b5cb2e7cfeae0">heads</a></td></tr>
<tr class="memdesc:aec12a24c9e2a96b83d4b5cb2e7cfeae0"><td class="mdescLeft">&#160;</td><td class="mdescRight">lookahead head set  <a href="#aec12a24c9e2a96b83d4b5cb2e7cfeae0">More...</a><br /></td></tr>
<tr class="separator:aec12a24c9e2a96b83d4b5cb2e7cfeae0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa980616e7268d3c41953c67cd981c02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_pattern.html#a635e175260a3f7fa5cc9fe1ea9d5ca26">Lookaheads</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#aaa980616e7268d3c41953c67cd981c02">tails</a></td></tr>
<tr class="memdesc:aaa980616e7268d3c41953c67cd981c02"><td class="mdescLeft">&#160;</td><td class="mdescRight">lookahead tail set  <a href="#aaa980616e7268d3c41953c67cd981c02">More...</a><br /></td></tr>
<tr class="separator:aaa980616e7268d3c41953c67cd981c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff119ee1bc144f4ded11a67871397743"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#aff119ee1bc144f4ded11a67871397743">redo</a></td></tr>
<tr class="memdesc:aff119ee1bc144f4ded11a67871397743"><td class="mdescLeft">&#160;</td><td class="mdescRight">true if this is an ignorable final state  <a href="#aff119ee1bc144f4ded11a67871397743">More...</a><br /></td></tr>
<tr class="separator:aff119ee1bc144f4ded11a67871397743"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Typedef Documentation</h2>
<a class="anchor" id="a5a1c3fc9957d801c8d8168988205e526"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::map&lt;<a class="el" href="classreflex_1_1_pattern.html#a1d74385d9faa9b77a0fd17614a17d3b1">Char</a>,std::pair&lt;<a class="el" href="classreflex_1_1_pattern.html#a1d74385d9faa9b77a0fd17614a17d3b1">Char</a>,<a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a>*&gt; &gt; <a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a5a1c3fc9957d801c8d8168988205e526">reflex::Pattern::DFA::State::Edges</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a268a99e2ba713557dd1b7208d71a96f2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">reflex::Pattern::DFA::State::State </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a053ca8d75ab02e211c9b61ed309830eb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a>* reflex::Pattern::DFA::State::assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html">Tree::Node</a> *&#160;</td>
          <td class="paramname"><em>node</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="af7528c8668a319c6547ed323838f8e0c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a>* reflex::Pattern::DFA::State::assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html">Tree::Node</a> *&#160;</td>
          <td class="paramname"><em>node</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classreflex_1_1_pattern.html#a7afa8a46d3665051c17de9b327f3f4dc">Positions</a> &amp;&#160;</td>
          <td class="paramname"><em>pos</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a186c28e529321e5de6bbb24288727785"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_pattern.html#a6f0e307c649ca5683b7d959b7e25f367">Accept</a> reflex::Pattern::DFA::State::accept</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>nonzero if final state, the index of an accepted/captured subpattern </p>

</div>
</div>
<a class="anchor" id="a1ec49b3b5a3382444710e6be864a6930"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html#a5a1c3fc9957d801c8d8168988205e526">Edges</a> reflex::Pattern::DFA::State::edges</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>state transitions </p>

</div>
</div>
<a class="anchor" id="aad7022adc0907c7068635b57176508bf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_pattern.html#a878042a0e46a089fd40b5f27bbf81ea3">Index</a> reflex::Pattern::DFA::State::first</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>index of this state in the opcode table, determined by the first assembly pass </p>

</div>
</div>
<a class="anchor" id="aec12a24c9e2a96b83d4b5cb2e7cfeae0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_pattern.html#a635e175260a3f7fa5cc9fe1ea9d5ca26">Lookaheads</a> reflex::Pattern::DFA::State::heads</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>lookahead head set </p>

</div>
</div>
<a class="anchor" id="a06a3c30420041f7866d2115fab11d357"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_pattern.html#a878042a0e46a089fd40b5f27bbf81ea3">Index</a> reflex::Pattern::DFA::State::index</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>index of this state in the opcode table </p>

</div>
</div>
<a class="anchor" id="aaaedea7cd603ba10520be2d19811d2d3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a>* reflex::Pattern::DFA::State::left</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>left pointer for O(log N) node insertion in the hash table overflow tree </p>

</div>
</div>
<a class="anchor" id="a5b7dfbc7187d35eebfe92e1695524e7f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a>* reflex::Pattern::DFA::State::next</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>points to next state in the list of states allocated depth-first by subset construction </p>

</div>
</div>
<a class="anchor" id="aff119ee1bc144f4ded11a67871397743"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool reflex::Pattern::DFA::State::redo</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>true if this is an ignorable final state </p>

</div>
</div>
<a class="anchor" id="afcddb0ef1460d7550e83500a400089c3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_d_f_a_1_1_state.html">State</a>* reflex::Pattern::DFA::State::right</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>right pointer for O(log N) node insertion in the hash table overflow tree </p>

</div>
</div>
<a class="anchor" id="aaa980616e7268d3c41953c67cd981c02"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_pattern.html#a635e175260a3f7fa5cc9fe1ea9d5ca26">Lookaheads</a> reflex::Pattern::DFA::State::tails</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>lookahead tail set </p>

</div>
</div>
<a class="anchor" id="a8975ca87c2a8a4a584923c74080dbfc2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structreflex_1_1_pattern_1_1_tree_1_1_node.html">Tree::Node</a>* reflex::Pattern::DFA::State::tnode</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>the corresponding tree <a class="el" href="structreflex_1_1_pattern_1_1_d_f_a.html" title="DFA created by subset construction from regex patterns. ">DFA</a> node, when applicable </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="pattern_8h.html">pattern.h</a></li>
</ul>
</div><!-- contents -->
<hr class="footer">
<address class="footer"><small>
Converted on Thu May 14 2020 13:20:14 by <a target="_blank" href="http://www.doxygen.org/index.html">Doxygen</a> 1.8.11</small></address>
<br>
<div style="height: 246px; background: #DBDBDB;">
</body>
</html>
